| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- import { NextRequest, NextResponse } from 'next/server'
- import { prisma } from '@/lib/prisma'
- // POST - Incrementar el secuencial de una configuración tributaria
- export async function POST(
- request: NextRequest,
- { params }: { params: Promise<{ id: string }> }
- ) {
- try {
- const { id } = await params
-
- // Obtener la configuración actual
- const configuracion = await prisma.configuracionTributaria.findUnique({
- where: { id }
- })
- if (!configuracion) {
- return NextResponse.json(
- { error: 'Configuración tributaria no encontrada' },
- { status: 404 }
- )
- }
- // Convertir el secuencial actual a número, incrementarlo y volver a convertir a string con padding
- const secuencialActual = parseInt(configuracion.secuencial, 10)
- const nuevoSecuencial = (secuencialActual + 1).toString().padStart(9, '0')
- // Actualizar el secuencial
- const configuracionActualizada = await prisma.configuracionTributaria.update({
- where: { id },
- data: { secuencial: nuevoSecuencial }
- })
- return NextResponse.json({
- mensaje: 'Secuencial incrementado correctamente',
- secuencialAnterior: configuracion.secuencial,
- nuevoSecuencial: nuevoSecuencial,
- configuracion: configuracionActualizada
- })
- } catch (error) {
- console.error('Error al incrementar secuencial:', error)
- return NextResponse.json(
- { error: 'Error al incrementar secuencial' },
- { status: 500 }
- )
- }
- }
|